Skip to content

Bump TypeScript to 7.0.2 - #4598

Draft
josefs wants to merge 1 commit into
mainfrom
josefs/bump-typescript-7
Draft

josefs wants to merge 1 commit into
mainfrom
josefs/bump-typescript-7

Conversation

@josefs

@josefs josefs commented Oct 13, 2026

Copy link
Copy Markdown
Contributor

Bumps TypeScript to 7.0.2, the native (Go) compiler, which makes type-checking dramatically faster (gulp type-check tasks now take ~0.4s).

TypeScript 7.0 does not ship a JS compiler API, so following the official recommendation we install both side by side:

  • typescript is aliased to @typescript/typescript6 (6.0.3), so tools that use the compiler API (typescript-eslint, ts-jest, ts-node, ts-json-schema-generator, Storybook) keep working.
  • @typescript/native is typescript@7.0.2 and provides the tsc binary used for all type-checking (npm run check-types, gulp build/watch).

Other changes

  • Replaced gulp-typescript (which uses the TS API) with spawning the TS 7 tsc CLI; removed gulp-typescript and ansi-colors. Updated the VS Code Build task problem matcher for the new output format.
  • src/view/tsconfig.json: moduleResolution: node is removed in TS 7, switched to bundler. This picks up packages' exports typings and surfaced three incorrect event handler types in RenamingInput.tsx and RAPrettyPrinter.tsx, which are fixed.
  • noUncheckedSideEffectImports is now on by default, so added declare module "*.css" (and included it in the stories tsconfig) for side-effect CSS imports.

Notes for reviewers

  • .vscode/settings.json typescript.tsdk still resolves to the TS 6 language server. Use the TypeScript 7 VS Code extension for TS 7 in the editor.

Validation

  • npm run build: passed
  • npm run check-types (TS 7): passed; configs also validated with tsc6
  • npm run lint: passed
  • npm run test:unit: passed (644 tests)
  • npm run test:view: passed (364 tests)
  • npm run generate:schemas (no changes), npm run find-deadcode, npm run lint:scenarios, npm run build-storybook: passed
  • Verified a deliberate type error fails gulp checkTypeScript

No user-facing changes, so no changelog entry.

TypeScript 7 is the native (Go) compiler and does not ship a JS API. Following
the upstream recommendation, `typescript` is aliased to
`@typescript/typescript6` so tools that use the compiler API (typescript-eslint,
ts-jest, ts-node, ts-json-schema-generator, Storybook) keep working, while
`@typescript/native` provides the TypeScript 7 `tsc` used for type-checking.

- Replace gulp-typescript with the TypeScript 7 `tsc` CLI in gulp tasks
- Replace the removed `moduleResolution: node` with `bundler` in src/view
- Declare `*.css` modules for side-effect CSS imports
- Fix webview event handler types surfaced by the stricter resolution
- Update the VS Code build task problem matcher

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: c2c54892-58d8-42e7-940b-8a0e22f9fa6d
@josefs josefs mentioned this pull request Oct 13, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant